package com.ccys.db.entity;

import com.ccys.db.rely.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
* Created by Mybatis Generator on 2023/12/15
*/
@Data
@Table(name = "tbl_bin_number")
@NoArgsConstructor
@AllArgsConstructor
public class TblBinNumber extends BaseEntity {
    private String name;

    private Integer status;

    @Column(name = "start_date")
    private Date startDate;

    @Column(name = "end_date")
    private Date endDate;

    private String number;

    /**
     * 0表示无限次数
     */
    @Column(name = "limit_usage")
    @ApiModelProperty("0表示无限次数")
    private Integer limitUsage;

    /**
     * 0:free delivery(快递费用免费);1:fixed $ off bill(账单抵扣金额);2:% off bill(账单打折);3:fixed $ off consultation(问诊费用抵扣金额);4:% off consultation(问诊费用打折);5:fixed $ off delivery(快递费用抵扣金额);6:% off delivery(快递费用打折);7:%off consultation + % off delivery(问诊费用与快递费用同时打折)
     */
    @Column(name = "discount_type")
    @ApiModelProperty("0:free delivery(快递费用免费);1:fixed $ off bill(账单抵扣金额);2:% off bill(账单打折);3:fixed $ off consultation(问诊费用抵扣金额);4:% off consultation(问诊费用打折);5:fixed $ off delivery(快递费用抵扣金额);6:% off delivery(快递费用打折);7:%off consultation + % off delivery(问诊费用与快递费用同时打折)")
    private Integer discountType;

    /**
     * 同一个人是否可以重复使用 0 否 1 是
     */
    @ApiModelProperty("同一个人是否可以重复使用 0 否 1 是")
    private Integer reusable;

    /**
     * 额度(金额或者抵扣的百分比)
     */
    @Column(name = "discount_amount")
    @ApiModelProperty("额度(金额或者抵扣的百分比)")
    private BigDecimal discountAmount;

    /**
     * 计算优惠金额与 floor 做比较，哪个大就用哪个值来付款
     */
    @Column(name = "office_hours_consult_floor")
    @ApiModelProperty("计算优惠金额与 floor 做比较，哪个大就用哪个值来付款")
    private BigDecimal officeHoursConsultFloor;

    /**
     * 计算优惠金额与 floor 做比较，哪个大就用哪个值来付款
     */
    @Column(name = "after_hours_consult_floor")
    @ApiModelProperty("计算优惠金额与 floor 做比较，哪个大就用哪个值来付款")
    private BigDecimal afterHoursConsultFloor;

    /**
     * 是否过期 0 否 1 是（只有在CMS操作）
     */
    @ApiModelProperty("是否过期 0 否 1 是（只有在CMS操作）")
    private Integer expired;

    /**
     * 过期时的提醒消息
     */
    @Column(name = "expiration_message")
    @ApiModelProperty("过期时的提醒消息")
    private String expirationMessage;

    /**
     * 是否支持打折医疗服务
     */
    @Column(name = "discount_off_service")
    @ApiModelProperty("是否支持打折医疗服务")
    private Integer discountOffService;

    /**
     * 医疗服务抵扣金额
     */
    @Column(name = "discount_amount_service")
    @ApiModelProperty("医疗服务抵扣金额")
    private BigDecimal discountAmountService;

    @Column(name = "discount_label")
    private String discountLabel;
}